The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for specifying options in filenames and multiplexing those options onto file access operations of a file system.
File systems are an integral part of modern computing systems. The file system represents a place where files are stored and provides a mechanism by which these files may be accessed. The file system can be local to a computing system, remotely located from the computing system, i.e. provided on a different computing system, such as in the case of storage area networks (SANs) and the like, or even distributed across a plurality of computing systems with parts of the file system and its corresponding files existing on different computing systems.
Regardless of the particular type or implementation of a file system, there is one common characteristic of file systems which is that all file systems allow users, applications on the computer system, the operating system of the computing system, and the like, to access files based on the use of a filename and optionally a file location. For example, a local file system of a LINUX® operating system can have a file with a filename /etc/passwd, which is the “passwd” file in the “etc” directory (file location). Similarly, /home/george/profile is the file named “profile” in the “george” directory, which itself is in the “home” directory. In this case, /home/george/profile can be described as the full filename since it comprises the full path (/home/george/) and the filename (profile).
A networked file system may have a file common:/tmp/xyz.txt, which is the “xyz.txt” file in the “tmp” directory on the “common” computing system. In the Microsoft® Windows® operating system a file c:\io.sys is the “io.sys” file in the top level directory of the “c:” drive of the computing system.
The illustrative embodiments described hereafter are directed to an improvement in the use of filenames with file systems to access files.